<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
</head>
<body>
    <div id="app">
        <p>a:{{a}}</p>
        <p>b:{{b}}</p>

        <input type="text" v-model="value">
        <p>{{value}}</p>
    </div>
    <script>
        // var data={a:1,b:null}
        // var vm=new Vue({
        //     el:"#app",
        //     data:data,
        // });

        // console.log(data.a,vm,vm.a,vm.$data.a);
        // console.log(data===vm.$data);
        // data.a=10;

        // vm.b="hi";
        //只有当实例被创建时就已经存在于data中的property才是响应式的

        var vm=new Vue({
            el:"#app",
            data:{
                a:1,
                b:null,
                newTodoText:"",
                visitCount:0,
                hideCompletedTodos:false,
                todos:[],
                value:"123",
            },

            //钩子函数  在vue执行的某个时期，执行我们的代码（函数）
            //创建vue实例之后
            created:function(){
                console.log(vm,this);
            }
        });
        console.log(vm.$el,vm.$data);
        vm.$watch("a",function(newValue,oldValue){
            console.log(newValue,oldValue);
        });
    </script>
</body>
</html>